Recently, in many cases, video data, audio data or other data is transmitted and stored in digital form. In such cases, data is generally divided into packet data comprising plural fields, to be transmitted and stored.
Further, in some cases, plural pieces of data are first restructured to be packet data, and then multiplexed to be transmitted through a transmission medium or to be stored in a storage medium. There has been proposed an international standard "MPEG" (Moving Picture Experts Group) for such data structure and multiplexing, and data is transmitted and stored by a method according to a packet data structure of MPEG.
One system in which such packet data are multiplexed, employs a receiving device which must select data to-be-received from the multiplexed data. In particular, while information such as PSI (Program Specific Information) or SI (Service Information) associated with programs is repeatedly transmitted in a section data format, required information varies depending upon the status of the receiver, for example, which program it has selected, and therefore it becomes necessary to reliably select target information from a variety of information.
A demultiplexer which is conventionally used as a receiver in digital broadcasting which adopts a data multiplexing method according to MPEG, will now be described.
A section comprises an 8-byte section header indicative of type of contained data and section data. Information in the section header is checked to decide whether or not the section contains required data.
In a prior art demultiplexer, the section selecting process is programmed by a processor. Sections which are subjected to the selecting process are stored in a memory. The processor sequentially reads header portions of the sections from the memory, makes comparison between these and parameters (of a header of a section to-be-selected) set in the memory, and decides whether or not a match is found. In some cases, there are 32 or more types of sections which are to be subjected to the selecting process simultaneously. The processor sequentially makes comparisions between the candidate parameters and the input section header, and when there is a match between them, it decides that the section is necessary.
However, there are problems with a method for performing selecting process to sections by the prior art processor, which are described below.
To perform selecting process to sections by the use of the processor, the processor must be capable of performing a 32-bit operation, and making a comparison between 4-byte data and parameters at the same time. To make this comparison, 4 clocks are necessary to read parameter mask information indicating whether or not comparison is to be made for each parameter reading field and store comparison and operation results. When there is a match between fields and 32 types of parameter groups, the section is selected. In the case of a processor which clocks at a processing speed of 40M instructions/sec, it is required that each packet which contains several sections be processed with approximately 1000 clocks, in view of data transmission rate in the digital broadcasting or the like.
Assuming that the number of bytes for comparison is 8 bytes, the number of the maximum clocks which is necessary to perform selecting process to one section is EQU 4 clocks.times.(8 bytes/4 bytes).times.32=256 clocks.
That is, only 4 sections are subjected to selecting process per packet. Moreover, since processing other than the section selecting process is performed when the packet data is processed, it is not possible to use all the 1000 clocks in the section selecting process.
For instance, in digital broadcasting in Japan, 10 sections at maximum may be transmitted in a packet, and therefore, the prior art processors have poor throughput in the selecting process.
One possible solution is to restrict the types of candidates to 32 or less to make up for lack of throughput.
However, restriction of the candidates means that required sections might not be subjected to selecting process at the same time. In this case, a section and then another section are subjected to selecting process. This method requires long time to perform selecting process and obtain all required information. As a result, the response speed at which a device such as a receiver in digital broadcasting can use this information is reduced.